package com.topgay.controller;

import java.sql.SQLException;
import java.util.List;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.topgay.domain.FriendList;
import com.topgay.domain.Member;
import com.topgay.service.FriendListService;

@Controller
@RequestMapping("/friendList/")
public class FriendListController {
	
	@Autowired
	private FriendListService service;

	@RequestMapping("addFriend.do")
	public ModelAndView addFriend(HttpSession session) throws SQLException{
		Member fl = (Member)session.getAttribute("login_info");
		String myId = fl.getId();
		Member f2 = (Member)session.getAttribute("member_info");
		String friendId = f2.getId();
		
		FriendList friend = new FriendList(myId, friendId);	
		int checkNum = service.addFriend(friend);
		return new ModelAndView("popup/message/profile.jsp?flag=0","add_friend",checkNum);
	}
	
	@RequestMapping("selectFriendList.do")
	public String selectFriendList(ModelMap map, String id) throws Exception{		
		List<FriendList> list = service.selectFriendList(id);
		map.put("list", list);
		return "jsonView";
	}
	
	@RequestMapping("deleteFriendList.do")
	public String deleteFriendList(String myId, String friendId) throws SQLException{
		service.removeFriend(myId, friendId);
		return "redirect:../message/member_profile.do?friendId="+friendId+"&myId="+myId;
		//이 로직이 잘 작동하려면 여기서 다시 프렌드 아이디 값을 가지고 멤버 프로필.do로 넘어갔을때 디비에서 친구 목록을 뒤져서 내 친구목록에 이 친구 아이디값이 없으면
		//jsp에서 이 값을 체크해서 친구 추가 버튼을 보여줄지 친구 삭제 버튼을 보여줄지 결정해야 한다.
	}
}
